package cliente.pagina.contenido.inicio;
import cliente.pagina.*;
import comun.constantes.PARAMETROS_PAGINAS;
import helpers.paginaAula.HelperPaginaAula;
import helpers.calendario.HelperCalendario;

import java.util.*;
/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: </p>
 * @author unascribed
 * @version 1.0
 */

public class ContenidoInicioCurso extends ContenidoInicio {

  protected int mes;
  public ContenidoInicioCurso() {
  }

  public ContenidoInicioCurso(Pagina pagina) {
    super(pagina);
    this.mes =((Date)new Date()).getMonth()+1;
    // si no viene nada en el parametro asumo el mes actual
    if (pagina.getParameter(PARAMETROS_PAGINAS.MES)!=null)
      this.mes = new Integer((String)pagina.getParameter(PARAMETROS_PAGINAS.MES)).intValue();
  }


  // redefino el metodo  de contenidoInicio para agregarle al link el
  // id de la pagina
  public String getPathNombrePagina()
  {
    String paginaForward =
        "index.jsp?"+PARAMETROS_PAGINAS.ID_ORGANIZACION+"="+((PaginaCurso)this.getPagina()).getIdOrganizacion()+
        "&"+PARAMETROS_PAGINAS.ID_AULA+"="+this.getPagina().getIdAula()+
        "&"+PARAMETROS_PAGINAS.MES+"="+mes;

    return utils.UtilsGenerarHtml.agregarParametroUrl(paginaForward,PARAMETROS_PAGINAS.REFRESH,new Long((new java.util.Date()).getTime()));
  }


  /**
   * Retorna el codigo html de la division contenido
   * @return
   */
  public String getHTMLVista()
  {
    HelperPaginaAula helperPaginaAula = new HelperPaginaAula(this.getPagina());
    HelperCalendario helperCalendario = null;
    String html="";
    try {
      // agregar combo de comisiones
      html = helperPaginaAula.getHTMLEncabezadoAula();
      helperCalendario = new HelperCalendario(this.getPagina());
      // agrego otra columna al contenido
      html +=      "        <div id=\"columna\">\n";

      html += helperCalendario.getHTMLCalendario(this.mes,true);

      html +=      "        </div>\n";

//      html += helperPaginaAula.getHTMLFormComisionesAula();
      if(this.getPagina().hayUsuarioPropioLogueado())
    	  html += helperPaginaAula.getHTMLAlertas();

      // agregar listado de comisiones
      html += helperPaginaAula.getHTMLComisionesAula();

      html += helperPaginaAula.getHTMLUltimaNoticia();
      html += helperPaginaAula.getHTMLComunicadoLicencia();      

      helperPaginaAula.commit();



      helperCalendario.commit();
      //actualiza la informacion de ultimo acceso a la pagina
      // vuelvo a crear el helper para hacerlo en otra trasaccion
      helperPaginaAula = new HelperPaginaAula(this.getPagina());
      helperPaginaAula.actualizaUltimoAcceso();
      helperPaginaAula.commit();
    }
    catch (Exception ex) {
      ex.printStackTrace();
      helperPaginaAula.rollback();
      helperCalendario.rollback();
      return  comun.MensajeDeError.ERROR_EN_LA_GENERACION_DE_LA_PAGINA;
    }
    return html;
  }

  public int getMes() {
    return mes;
  }
  public void setMes(int mes) {
    this.mes = mes;
  }

}